package com.sigmatrix.h5.web.ins.controller;

import java.util.List;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import com.sigmatrix.h5.entity.AdminArea;
import com.sigmatrix.h5.service.AdminAreaService;
import com.sigmatrix.h5.web.BaseController;
import com.sigmatrix.h5.web.Result;

import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;

/**
 * 
 *@ClassName: AdminAreaController
 *@Description: 行政区划接口
 *@author MH
 *@date 2017年9月25日 下午1:25:52
 */
@Api(tags="行政区划")
@RestController
@RequestMapping("/ins/area")
public class AdminAreaController extends BaseController{
	
	@Autowired
	private AdminAreaService adminAreaService;
	
	/**
	 *
	 *@Title: getChildren
	 *@Description: 查询行政区划
	 *@return Result
	 *@author MH
	 *@date 2017年9月25日 下午1:54:51
	 *@param parentId
	 *@return
	 */
	@ApiOperation("查询行政区划")
	@GetMapping("/list")
	public Result<List<AdminArea>> getChildren(Integer parentId){
		List<AdminArea> list = adminAreaService.findByParentId(parentId);
		return ok(list);
	}
	
	/**
	 * 
	 *@Title: findProvinceAndCity
	 *@Description: 查询省市
	 *@return Result
	 *@author MH
	 *@date 2017年10月10日 下午4:39:30
	 *@return
	 */
	@ApiOperation("查询省市")
	@GetMapping("/proci/list")
	public Result<List<AdminArea>> findProvinceAndCity(){
		List<AdminArea> list = adminAreaService.findProvinceAndCity();
		return ok(list);
	}
	
	/**
	 * 
	 *@Title: reload
	 *@Description: 如果缓存里的数据有滞后，次方法将查询最新的数据放到缓存
	 *@return Result
	 *@author MH
	 *@date 2017年10月10日 下午4:55:56
	 *@return
	 */
	@ApiOperation("查询最新的数据放到缓存")
	@GetMapping("/reload")
	public Result<Void> reload(){
		adminAreaService.reload();
		return ok(null);
	}
}
